<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class loginadmin extends CI_Controller {

    function __construct(){
        parent::__construct();
        //$this->load->model('LoginModel');
        $this->load->model('AdminModel');
        $this->load->model('Log');
        $this->load->helper("auth");
    }

    public function index($erro = "")
    {
        if (logado()) redirect("erro/index/ja_logado");
        $this->load->helper("form");
        $this->load->library("form_validation");

        //constroi o link para redirecionamento
        $CI = &get_instance();
        $link = explode("loginadmin/index/",$CI->input->server("REQUEST_URI"));

        $dados['titulo'] = "Login de Usu&aacute;rio";
        if(count($link)>1) $dados['pagina'] = $link[1];
        else $dados['pagina'] = "home";
        if ($erro == "erro") $erro = "Você precisa ser um administrador para acessar esta página";

        $main = array(
            "dados" => $dados,
            "link" => "login_admin_view"
            );
        $this->load->view("template",$main);
    }

    public function logar(){
        if (logado()) redirect("erro/index/ja_logado");
        $this->load->helper("form");
        $this->load->library("form_validation");

        $dados['titulo'] = "Login de Usu&aacute;rio";
        $dados['pagina'] = $this->input->post("pagina");

        $main = array(
            "dados" => $dados,
            "link" => "login_admin_view"
            );

        $this->form_validation->set_rules("email", "E-mail", "required|valid_email");
        $this->form_validation->set_rules("senha", "Senha", "required");


        if ($this->form_validation->run() == false) :
            $this->load->view('template', $main);

        else :
            $admin = $this->AdminModel->getAdminEmail( $this->input->post("email") );

            if( $admin ) :
                if( $admin->senha == $this->input->post("senha") ) :
                    $admin->tipo =  "admin";
                    $this->session->set_userdata('user', $admin);
                    //echo $this->input->post("pagina");
                    $this->Log->inserir(tipo_usuario(), id_tipo_usuario(), "logou");
                    redirect($this->input->post("pagina"));
                    //redirect("home");

                else :
                    $dados['erro'] = "Usu&aacute;rio ou senha incorreto!";
                    $main['dados'] = $dados;
                    $this->load->view("template", $main);

                endif;
            else :
                $dados['erro'] = "Usu&aacute;rio ou senha incorreto!";
                $main['dados'] = $dados;
                $this->load->view("template", $main);
            endif;
        endif;

    }

    function admin_check($str){
        $email = explode("@",$str);
        echo $email[0];
        if (count($email) < 2 || $email[1] != "admin.com") :
            $this->form_validation->set_message("admin_check", "Você precisa ser um admin para logar aqui");
            return FALSE;
        else :
            return TRUE;
        endif;
    }

    public function deslogar(){
        $this->Log->inserir(tipo_usuario(), id_tipo_usuario(), "deslogou");
        $this->session->sess_destroy();
        redirect("home");
    }

}
?>